package com.diligent.cloud.sfc.service;

import com.canny.commons.model.ListResult;
import com.canny.commons.model.ObjectResult;
import com.canny.commons.model.Result;
import com.diligent.cloud.logistics.container.model.LcmBoxFill;
import com.diligent.cloud.logistics.container.model.LcmMoveApply;
import com.diligent.cloud.logistics.container.model.LcmTransport;
import com.diligent.cloud.logistics.container.model.LcmWeightApply;
import org.springframework.http.ResponseEntity;

import java.security.Principal;

/**
 * WorkshopTransportService interface
 *
 * @author xf107278
 * @date 3/28/2020
 */
public interface WorkshopTransportService {

    ResponseEntity<Result> searchTransport(String code,String systemId);

    ResponseEntity<Result> addTransport(LcmTransport lcmTransport, Principal principal);

    ResponseEntity<ObjectResult> addBoxFill(LcmBoxFill lcmBoxFill, Principal principal);

    ResponseEntity<Result> addWeightApply(LcmWeightApply lcmWeightApply, Principal principal);

    ResponseEntity<Result> addMoveApply(LcmMoveApply moveApply,  Principal principal);

    ResponseEntity<ListResult> getIdleBox( String machCode, Long pageIndex, Long pageSize);

    ResponseEntity<Result> updateBoxMat(Long matId,Long lotId,String lotCode,Long fillDetailId);
}
